home *** CD-ROM | disk | FTP | other *** search
/ Dynamic HTML Construction Kit / Dynamic HTML Construction Kit.iso / earthlink / nscomm / java40.jar / java / awt / Rectangle.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-03  |  3.4 KB  |  188 lines

  1. package java.awt;
  2.  
  3. import java.io.Serializable;
  4.  
  5. public class Rectangle implements Shape, Serializable {
  6.    // $FF: renamed from: x int
  7.    public int field_0;
  8.    // $FF: renamed from: y int
  9.    public int field_1;
  10.    public int width;
  11.    public int height;
  12.  
  13.    public Rectangle() {
  14.       this(0, 0, 0, 0);
  15.    }
  16.  
  17.    public Rectangle(Rectangle var1) {
  18.       this(var1.field_0, var1.field_1, var1.width, var1.height);
  19.    }
  20.  
  21.    public Rectangle(int var1, int var2, int var3, int var4) {
  22.       this.field_0 = var1;
  23.       this.field_1 = var2;
  24.       this.width = var3;
  25.       this.height = var4;
  26.    }
  27.  
  28.    public Rectangle(int var1, int var2) {
  29.       this(0, 0, var1, var2);
  30.    }
  31.  
  32.    public Rectangle(Point var1, Dimension var2) {
  33.       this(var1.x, var1.y, var2.width, var2.height);
  34.    }
  35.  
  36.    public Rectangle(Point var1) {
  37.       this(var1.x, var1.y, 0, 0);
  38.    }
  39.  
  40.    public Rectangle(Dimension var1) {
  41.       this(0, 0, var1.width, var1.height);
  42.    }
  43.  
  44.    public Rectangle getBounds() {
  45.       return new Rectangle(this.field_0, this.field_1, this.width, this.height);
  46.    }
  47.  
  48.    public void setBounds(Rectangle var1) {
  49.       this.setBounds(var1.field_0, var1.field_1, var1.width, var1.height);
  50.    }
  51.  
  52.    public void setBounds(int var1, int var2, int var3, int var4) {
  53.       this.reshape(var1, var2, var3, var4);
  54.    }
  55.  
  56.    public void reshape(int var1, int var2, int var3, int var4) {
  57.       this.field_0 = var1;
  58.       this.field_1 = var2;
  59.       this.width = var3;
  60.       this.height = var4;
  61.    }
  62.  
  63.    public Point getLocation() {
  64.       return new Point(this.field_0, this.field_1);
  65.    }
  66.  
  67.    public void setLocation(Point var1) {
  68.       this.setLocation(var1.x, var1.y);
  69.    }
  70.  
  71.    public void setLocation(int var1, int var2) {
  72.       this.move(var1, var2);
  73.    }
  74.  
  75.    public void move(int var1, int var2) {
  76.       this.field_0 = var1;
  77.       this.field_1 = var2;
  78.    }
  79.  
  80.    public void translate(int var1, int var2) {
  81.       this.field_0 += var1;
  82.       this.field_1 += var2;
  83.    }
  84.  
  85.    public Dimension getSize() {
  86.       return new Dimension(this.width, this.height);
  87.    }
  88.  
  89.    public void setSize(Dimension var1) {
  90.       this.setSize(var1.width, var1.height);
  91.    }
  92.  
  93.    public void setSize(int var1, int var2) {
  94.       this.resize(var1, var2);
  95.    }
  96.  
  97.    public void resize(int var1, int var2) {
  98.       this.width = var1;
  99.       this.height = var2;
  100.    }
  101.  
  102.    public boolean contains(Point var1) {
  103.       return this.contains(var1.x, var1.y);
  104.    }
  105.  
  106.    public boolean contains(int var1, int var2) {
  107.       return this.inside(var1, var2);
  108.    }
  109.  
  110.    public boolean inside(int var1, int var2) {
  111.       return var1 >= this.field_0 && var1 - this.field_0 < this.width && var2 >= this.field_1 && var2 - this.field_1 < this.height;
  112.    }
  113.  
  114.    public boolean intersects(Rectangle var1) {
  115.       return var1.field_0 + var1.width > this.field_0 && var1.field_1 + var1.height > this.field_1 && var1.field_0 < this.field_0 + this.width && var1.field_1 < this.field_1 + this.height;
  116.    }
  117.  
  118.    public Rectangle intersection(Rectangle var1) {
  119.       int var2 = Math.max(this.field_0, var1.field_0);
  120.       int var3 = Math.min(this.field_0 + this.width, var1.field_0 + var1.width);
  121.       int var4 = Math.max(this.field_1, var1.field_1);
  122.       int var5 = Math.min(this.field_1 + this.height, var1.field_1 + var1.height);
  123.       return new Rectangle(var2, var4, var3 - var2, var5 - var4);
  124.    }
  125.  
  126.    public Rectangle union(Rectangle var1) {
  127.       int var2 = Math.min(this.field_0, var1.field_0);
  128.       int var3 = Math.max(this.field_0 + this.width, var1.field_0 + var1.width);
  129.       int var4 = Math.min(this.field_1, var1.field_1);
  130.       int var5 = Math.max(this.field_1 + this.height, var1.field_1 + var1.height);
  131.       return new Rectangle(var2, var4, var3 - var2, var5 - var4);
  132.    }
  133.  
  134.    public void add(int var1, int var2) {
  135.       int var3 = Math.min(this.field_0, var1);
  136.       int var4 = Math.max(this.field_0 + this.width, var1);
  137.       int var5 = Math.min(this.field_1, var2);
  138.       int var6 = Math.max(this.field_1 + this.height, var2);
  139.       this.field_0 = var3;
  140.       this.field_1 = var5;
  141.       this.width = var4 - var3;
  142.       this.height = var6 - var5;
  143.    }
  144.  
  145.    public void add(Point var1) {
  146.       this.add(var1.x, var1.y);
  147.    }
  148.  
  149.    public void add(Rectangle var1) {
  150.       int var2 = Math.min(this.field_0, var1.field_0);
  151.       int var3 = Math.max(this.field_0 + this.width, var1.field_0 + var1.width);
  152.       int var4 = Math.min(this.field_1, var1.field_1);
  153.       int var5 = Math.max(this.field_1 + this.height, var1.field_1 + var1.height);
  154.       this.field_0 = var2;
  155.       this.field_1 = var4;
  156.       this.width = var3 - var2;
  157.       this.height = var5 - var4;
  158.    }
  159.  
  160.    public void grow(int var1, int var2) {
  161.       this.field_0 -= var1;
  162.       this.field_1 -= var2;
  163.       this.width += var1 * 2;
  164.       this.height += var2 * 2;
  165.    }
  166.  
  167.    public boolean isEmpty() {
  168.       return this.width <= 0 || this.height <= 0;
  169.    }
  170.  
  171.    public int hashCode() {
  172.       return this.field_0 ^ this.field_1 * 37 ^ this.width * 43 ^ this.height * 47;
  173.    }
  174.  
  175.    public boolean equals(Object var1) {
  176.       if (var1 instanceof Rectangle) {
  177.          Rectangle var2 = (Rectangle)var1;
  178.          return this.field_0 == var2.field_0 && this.field_1 == var2.field_1 && this.width == var2.width && this.height == var2.height;
  179.       } else {
  180.          return false;
  181.       }
  182.    }
  183.  
  184.    public String toString() {
  185.       return this.getClass().getName() + "[x=" + this.field_0 + ",y=" + this.field_1 + ",width=" + this.width + ",height=" + this.height + "]";
  186.    }
  187. }
  188.